<?php
 /**
* Fonctionnalités de validation des champs du formulaire
*
* Ensemble des expressions régulières
* -- PASSWORD     => 8 caractères minimum
* -- NOM          => 3 caractères minimum et en majuscule
* -- PRENOM       => 2 caractères minimum, 1er lettre en majuscule et les autres en minuscule
* -- CODE POSTAL  => 5 chiffres
* -- VILLE        => 3 lettres minimum
* -- EMAIL        => minimum 1 caractere, symbole @, minimum 1 caractere, symbole ., 2 à 4 lettres
* 
* [Mathieu FOURNIAL - Romain MIOR]
*/
 
// -- Fait en TP [Mathieu FOURNIAL - Romain MIOR]
// Valide la valeur par Expression Régulière
function check_formulaire($valeur, $regex) {
    $res = false;
    
    if(!empty($valeur))
    {
        // Test l'expression
        $res = preg_match($regex, $valeur);
    }
    else
    {
        $res = false;
    }
    
    // Retourne le résultat
    return $res;
}

// -- Fait en TP [Mathieu FOURNIAL - Romain MIOR]
function password($valeur) {
	return check_formulaire($valeur, "/[a-z0-9]{8}/");
}

// -- Fait en TP [Mathieu FOURNIAL - Romain MIOR]
function nom($valeur) {
	return check_formulaire($valeur, "/^[A-Z \-ÀÁÂÃÄÅÒÓÔÕÖØÈÉÊËÇÌÍÎÏÙÚÛÜÑ]{3}[A-Z \-ÀÁÂÃÄÅÒÓÔÕÖØÈÉÊËÇÌÍÎÏÙÚÛÜÑ]*$/");
}

// -- Fait en TP [Mathieu FOURNIAL - Romain MIOR]
function prenom($valeur) {
	return check_formulaire($valeur, "/^[A-Z][a-z \-àáâãäåòóôõöøèéêëçìíîïùúûüÿñ]{2}[a-z \-àáâãäåòóôõöøèéêëçìíîïùúûüÿñ]*$/");
}

// -- Fait en TP [Mathieu FOURNIAL - Romain MIOR]
function code_postal($valeur) {
	return check_formulaire($valeur, "/^[0-9]{5}$/");
}

// -- Fait en TP [Mathieu FOURNIAL - Romain MIOR]
function ville($valeur) {
	return check_formulaire($valeur, "/^[a-zàáâãäåòóôõöøèéêëçìíîïùúûüÿñ]{3}[a-zàáâãäåòóôõöøèéêëçìíîïùúûüÿñ]*$/i");
}

// -- Fait en TP [Mathieu FOURNIAL - Romain MIOR]
function email($valeur) {
	return check_formulaire($valeur, "/^[A-Z0-9._\-]+@[A-Z0-9.-]+\.[A-Z]{2,4}$/i");
}

?>